package com.ruoyi.system.service.impl;

import java.util.List;

import com.ruoyi.system.domain.RepPro;
import com.ruoyi.system.domain.RepProList;
import com.ruoyi.system.mapper.RepProMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.system.mapper.RepBaseMapper;
import com.ruoyi.system.domain.RepBase;
import com.ruoyi.system.service.IRepBaseService;

/**
 * 报基本信息Service业务层处理
 * 
 * @author renfx
 * @date 2021-09-09
 */
@Service
public class RepBaseServiceImpl implements IRepBaseService 
{
    @Autowired
    private RepBaseMapper repBaseMapper;

    @Autowired
    private RepProMapper repProMapper;

    /**
     * 查询报基本信息
     * 
     * @param id 报基本信息主键
     * @return 报基本信息
     */
    @Override
    public RepBase selectRepBaseById(Integer id)
    {
        return repBaseMapper.selectRepBaseById(id);
    }

    /**
     * 查询报基本信息列表
     * 
     * @param repBase 报基本信息
     * @return 报基本信息
     */
    @Override
    public List<RepBase> selectRepBaseList(RepBase repBase)
    {
        return repBaseMapper.selectRepBaseList(repBase);
    }

    /**
     * 新增报基本信息
     * 
     * @param repBase 报基本信息
     * @return 结果
     */
    @Override
    public int insertRepBase(RepBase repBase)
    {
        return repBaseMapper.insertRepBase(repBase);
    }

    /**
     * 修改报基本信息
     * 
     * @param repBase 报基本信息
     * @return 结果
     */
    @Override
    public int updateRepBase(RepBase repBase)
    {
        return repBaseMapper.updateRepBase(repBase);
    }

    /**
     * 批量删除报基本信息
     * 
     * @param ids 需要删除的报基本信息主键
     * @return 结果
     */
    @Override
    public int deleteRepBaseByIds(Integer[] ids)
    {
        return repBaseMapper.deleteRepBaseByIds(ids);
    }

    /**
     * 删除报基本信息信息
     * 
     * @param id 报基本信息主键
     * @return 结果
     */
    @Override
    public int deleteRepBaseById(Integer id)
    {
        return repBaseMapper.deleteRepBaseById(id);
    }

    /**
     * 根据orderId查询报表基本信息
     *
     * @param orderId 报基本信息主键
     * @return 报基本信息
     */
    public RepBase selectRepBaseOrderId(Integer orderId) {
        return repBaseMapper.selectRepBaseOrderId(orderId);
    }

    /**
     * 查询明细
     *
     * @param id 报基本信息
     * @return 报基本信息集合
     */
    public List<RepPro> selectDetail(Integer id) {
        RepPro repPro = new RepPro();
        repPro.setOrderNum(id);
        return repProMapper.selectRepProList(repPro);
    }

    /**
     * 查询报基本信息列表带字典值
     *
     * @param repPro 报基本信息
     * @return 报基本信息
     */
    @Override
    public List<RepProList> selectRepProListForDisc(RepPro repPro)
    {
        return repProMapper.selectRepProListForDisc(repPro);
    }


}
